package com.zk.mockito.cases;

import org.junit.Test;

import java.util.List;

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

public class Case007_Stubing2ReturnValue {

    /**
     * 本测试案例实现了同一个接口，调用两次后返回不同的结果的情况
     * 注意，连续执行两次存根，会导致第二次存根覆盖第一次存根结果，不会产生相同的结果。
     */
    @Test
    public void testStubing2ReturnValue() {

        List mockedList = mock(List.class);

        when(mockedList.add(any(Object.class)))
                .thenReturn(true)
                .thenReturn(false);

        boolean add1 = mockedList.add("one");
        boolean add2 = mockedList.add("two");
        System.out.println(add1 + "," + add2);
    }


}
